package cn.tedu.net.collection.generic;

import java.util.ArrayList;

//本类用于测试泛型的优点
public class Test1_Generic {
    public static void main(String[] args) {
        //泛型是怎么来的?--想要模拟数组的数据类型检查

         //创建一个String[]长度为5
        String[] s=new String[5];
        s[0]="皮皮虾";
        s[4]="小涛涛";
        //0.数组的好处:在编译时期检查数据如果不是定义的类型就报错
        //泛型通常与集合一起使用
        ArrayList list=new ArrayList();
        list.add("下午好");
        list.add(1);
        list.add('c');
        list.add(3.4);
        System.out.println(list);//通过打印查看集合中的元素
// 引入泛型--通过泛型约束集合中的元素类型
// 可以把报错的时机提前,在编译期就报错,而不是运行后才抛出异常,在集合中添加元素时会先检查元素类型不是要求的类型就添加失败
// <数据类型> --type的值应该如何写?
/* 需要存放什么类型,就定义什么类型
但不能时基本类型,必须是引用类型
* */
        ArrayList<Integer> list2=new ArrayList<>();
        list2.add(1);
        list2.add(2);
        list2.add(3);
//        list2.add("a");
        System.out.println(list2);
    }
}
